package com.kaifamiao.list;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;

/**
 * List接口从 Java 8 开始新增了:
 *  public  default void sort( Comparator<? super E> c )
 */
public class ListSort2 {

    public static void main(String[] args) {

        List<Integer> list = Arrays.asList( 9, 10, 2, 6, 7, 3, 4 );

        List<Integer> numbers = new ArrayList<>();
        numbers.addAll( list );
        numbers.add( 1 );
        numbers.add( 0 , 5 );
        numbers.add( 2 , 8 );
        System.out.println( numbers );

        // 若参数为 null 则表示按照 自然顺序 进行排序
        numbers.sort( null );
        System.out.println( numbers );

        numbers.sort(new Comparator<Integer>() {
            @Override
            public int compare(Integer x, Integer y) {
                if( x != null && y != null ) {
                    return -( x - y );
                }
                return 0;
            }
        });

        System.out.println( numbers );
    }

}
